Basic Methods of WebDriver Interface
package asc;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.edge.EdgeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.safari.SafariDriver;
import static org.openqa.selenium.support.locators.RelativeLocator.with;
import java.util.List;
import java.util.Set;
import io.github.bonigarcia.wdm.WebDriverManager;
public class MT {
public static String browser = "Chrome";
public static WebDriver driver;
public static void main(String[] args) {
// TODO Auto-generated method stub
if (browser.equals("Firefox")) {
WebDriverManager.firefoxdriver().setup();
driver = new FirefoxDriver();
} else if (browser.equals("Chrome")) {
WebDriverManager.chromedriver().setup();
driver = new ChromeDriver();
}
else if (browser.equals("Safari")) {
WebDriverManager.safaridriver().setup();
driver = new SafariDriver();
} else if (browser.equals("Edge")) {
WebDriverManager.edgedriver().setup();
driver = new EdgeDriver();
}
driver.get("https://www.saucedemo.com/v1/");
driver.findElement(By.id("user-name")).sendKeys("standard_user");
driver.findElement(By.id("password")).sendKeys("secret_sauce");
driver.findElement(By.xpath("/html/body/div[2]/div[1]/div/div/form/input[3]")).click();
List webelements = driver.findElements(By.xpath("//div[@class='inventory_item']/div"));
System.out.println(webelements);
driver.navigate().to("https://ittrainingclasses.in/");
String widowhandle = driver.getWindowHandle();
System.out.println(widowhandle);
driver.findElement(By.xpath("/html/body/div[2]/header/div[1]/nav/div/li[1]/a")).click();
Set windowhandles = driver.getWindowHandles();
System.out.println(windowhandles);
driver.quit();
//driver.manage().window().maximize();
//String currentUrl =driver.getCurrentUrl();
//System.out.println(currentUrl);
//String title =driver.getTitle();
//System.out.println(title);
//String pagesource =driver.getPageSource();
//System.out.println(pagesource);
//driver.navigate().to("https://www.google.com/");
//driver.close();
// WebDriverManager.chromedriver().setup();
// ChromeDriver driver = new ChromeDriver();
// FirefoxDriver driver = new FirefoxDriver();
// SafariDriver driver = new SafariDriver()
// WebElement password = driver.findElement(By.id("password"));
// driver.findElement(with(By.tagName("input")).above(password)).sendKeys("testing3");
// driver.findElement(with(By.tagName("input")).below(password)).click()
// driver.get("https://www.selenium.dev/documentation/webdriver/elements/locators/");
// driver.findElement(By.className("form_input")).sendKeys("testing");
// driver.findElement(By.cssSelector("#user-name")).sendKeys("testing1");
// driver.findElement(By.tagName("input")).sendKeys("testing2");
// driver.findElement(By.linkText("Getting Started")).click();
// driver.findElement(By.partialLinkText("Getting")).click()
// driver.findElement(By.id("user-name")).sendKeys("standard_user")
// driver.findElement(By.id("password")).sendKeys("secret_sauce");
// driver.findElement(By.xpath("/html/body/div[2]/div[1]/div/div/form/input[3]")).click();
}
}
Dont't Give the space between the code
1. getWindowHandle():
- Returns an opaque handle to the current window.
- This handle uniquely identifies the window within the WebDriver instance.
- Usage in Code:
driver.get ("https: //www .saucedemo .com/v1/ ");
2. getWindowHandles():
- Returns a set of handles for all open windows.
- This can be used to iterate over all open windows in the WebDriver instance.
- Usage in Code:
Set "< String >" windowHandles = driver.getWindowHandles(); for (String handle : windowHandles) { driver.switchTo().window(handle); // Perform actions on the window }
3. switchTo():
- Switches the focus of future commands to a different frame, window, or alert.
- This method is useful when dealing with multiple windows, frames, or alerts.
- Usage in Code:
driver.switchTo().frame("frameName"); // Switch to a frame by name driver.switchTo().window("windowHandle"); // Switch to a window by handle driver.switchTo().alert(); // Switch to an alert
4. findElement(By by):
- Finds the first web element using the given locating mechanism.
- Usage in Code:
WebElement element = driver.findElement(By.id("elementId"));
5. findElements(By by):
- Finds all elements within the current page using the given locating mechanism.
- Returns a list of web elements.
- Usage in Code:
List
elements = driver.findElements(By.className("elementClass"));